package com.sevenGroup.pawnshop.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.sevenGroup.pawnshop.controller.form.SelectStoreForm;
import com.sevenGroup.pawnshop.controller.form.StoreForm;
import com.sevenGroup.pawnshop.controller.form.pageForm;
import com.sevenGroup.pawnshop.controller.info.StoresInfo;
import com.sevenGroup.pawnshop.exception.sevenGroupException;
import com.sevenGroup.pawnshop.model.Stores;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author sevenGroup
 * @since 2022-02-16
 */
public interface StoresService extends IService<Stores> {

    //分页查询所有门店
    IPage<StoresInfo> selectAllStores(pageForm pageForm) throws sevenGroupException;
    //新增门店
    void saveStore(StoreForm storeForm) throws sevenGroupException;
    //更新门店
    void updateStore(StoreForm storeForm) throws sevenGroupException;
    //根据条件模糊查询门店
    IPage selectAllStoreByAll(SelectStoreForm selectStoreForm) throws sevenGroupException;
    //根据门店id查询门店及其所有对应的仓库
    Stores selectStoreAndAllWarehouses(Integer storeId) throws sevenGroupException;
    //根据id删除门店
    void delStore(Integer storeId) throws sevenGroupException;
    //根据id集合删除门店
    void delStoreByList(List<Integer> list) throws sevenGroupException;

}
